package com.qvtu.poetry.common.config;

import lombok.RequiredArgsConstructor;
import org.springframework.ai.chat.model.ChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
//import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.memory.ChatMemory;
import org.springframework.ai.chat.client.advisor.MessageChatMemoryAdvisor;

@Configuration
@RequiredArgsConstructor
public class AiConfig {

    //    // Spring AI 会根据 application.yml 中的 spring.ai.ollama 配置自动创建 OllamaChatModel Bean
    final ChatModel ChatModel;


    @Bean
    public ChatClient chatClient(ChatModel model) {
        return ChatClient
                .builder(model)
                .defaultSystem("你是一个诗歌生成系统。\n角色：根据用户提供的主题、体裁、风格、情感、意向、用典、藏头等参数，" +
                        "创作中文诗歌。\n输出规范：\n- 第一行仅为诗歌标题（不加引号、不以句读结束）。\n- 其后为正文，每句或每行换行展示。" +
                        "\n- 严禁输出解释、前后缀、标记或无关文本，仅输出标题与正文。\n- 不得输出思考过程、提示词或内部推理内容。\n- " +
                        "如提供藏头(acrostic)，正文各行首字依次组成该短语。\n- 贴合指定体裁与风格，优先使用规范中文标点。\n" +
                        "安全：避免涉黄、暴力、违法等不当内容。/no_think")
                .build();
    }


}